МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
ЛАБОРАТОРНА РОБОТА № 2
з курсу “ Мікропроцесорні пристрої ”
ДОСЛІДЖЕННЯ АРХІТЕКТУРИ МІКРОКОНТРОЛЕРА СІМЕЙСТВА MCS-51 (AT90S8515 та AT89S52) З ВИКОРИСТАННЯМ ЛАБОРАТОРНОГО СТЕНДУ EV8031/AVR
Львів – 2011
Мета роботи
Вивчення внутрішньої структури мікроконтролера сімейства MCS-51 фірми Atmel (AT90S8515 та AT89S52), зокрема, програмно-доступних елементів та системи команд, використовуючи лабораторний стенд EV8031/AVR (V3.2); набути досвіду розроблення простих програм, діагностики помилок, завантаження програм у пам’ять мікроконтролера та запуску їх на виконання.
Структурна схема МК та призначення його основних складових.
Основні складові мікроконтролера.
Процесор з гарвардською структурою реалізує повне логічне та фізичне розділення адресних просторів та інформаційних шин для звертання до пам’яті програм та пам’яті даних. Така побудова дуже близька до структури цифрових сигнальних процесорів і збільшує продуктивність МК. Процесор працює одночасно як з пам’яттю програм, так і з пам’яттю даних. Розрядність шини адреси пам’яті 16 біт. В МК типу AVR використовується конвеєрна технологія. Внаслідок цього цикл “вибирання-виконання” суттєво скорочений, тобто машинний цикл, на протязі якого виконується команда, складає всього один період тактової частоти.
Реєстровий файл займає молодші 32 байти в загальному адресному просторі МК (рис.2). Шість з 32-х реєстрів файлу можуть використовуватися як три 16-розрядні вказівники (X, Y, Z Pointers) адреси при непрямій адресації даних. Один з цих вказівників (Z Pointer) використовується також для доступу до даних, записаних в пам’яті програм МК. Використання 16-бітних вказівників (X, Y, Z Pointers) суттєво підвищує швидкість пересилання даних при виконанні прикладних програм.
Пам’ять програм. Всі AVR МК мають Flash-пам’ять програм, яка може завантажуватися як звичайним програматором, так і з допомогою SPI(serial peripheral interfase)-інтерфейсу, зокрема, безпосередньо на платі. Кількість циклів перезапису - не менше 1000.
Пам’ять даних. Всі AVR МК мають також енергонезалежну пам’ять даних з електричним стиранням EEPROM. Цей тип пам’яті використовується для зберігання проміжних даних, різних констант, таблиць перекодування і т.п. Дані в EEPROM можуть завантажуватися як через SPI-інтерфейс, так і за допомогою звичайного програматора. Кількість циклів перезапису складає не менше 100000. Два програмованих біти захисту інформації дозволяють захистити пам’ять від несанкціонованого доступу.
Внутрішня оперативна пам’ять SRAM (статичного типу) є у всіх МК AVR сімейства Classic та Mega і у деяких типах сімейства Tiny. Деякі МК допускають під’єднання зовнішньої памяті даних об’ємом до 64 Кбайт.
Структурна схема МК.
Лістинги перевірених програм.
Тестові програми
Програма 1
ORG 100H ; Початок програми
mov R1, #45h ; R1← 45
; Переслати безпосередньо
;у 8-розрядний реєстр R1 число 45
add R1, # EA ; R1←R1+EA
; Додати до вмісту реєстру R1 число EA
mov R2, R1 ; R2←R1
; Переслати вміст реєстру R1 в реєстр R2
END ; Закінчення програми
Програма 2
ORG 0 ; Початок програми
Con:mov R1, #04h ; записати в R1 число 04
mov R4, #30h ; записати в R4 число 30
mov DPTR, # 0B000h ; занести в реєстр DPTR адресу Інд.DD17, DD18
mov A, R1 ; записати в А значення R1
add A, R4 ; додати вміст реєстрів А і R4
; та занести суму у реєстр А
movx @DPTR, A ; висвітити на Інд. DD17, DD18 A
mov A, #00h ; обнулити A
jmp Con ; перейти на початок
END ; Закінчення програми
Індивідуальні завдання
Програма 3
Завдання №1
Занести в реєстр R4 двійково-десяткове число 0Х, в реєстр R6 - двійково-десяткове число Х0, суму чисел відобразити на першому і другому знакомісці статичної індикації; Х - будь-якa цифра від 0 до 9.
Виберемо : Х = 5.
0A000h – адреса лівої пари (третє і четверте знакомі...